![]() ![]() ![]() ![]() ![]() Alan numitron clock Clapclap 2313/1386 SNES Pi Webserver USB Volume/USB toys Smokey amp Laser cutter WordClock ardReveil v3 SNES Arcade cabinet Game boy projects cameleon Home Presence Detector ![]() AlanFromJapan ![]() ![]() ![]() Akizukidenshi Elec-lab Rand Nerd Tut EEVblog SpritesMods AvrFreaks Gameboy Dev FLOZz' blog Switch-science Sparkfun Suzusho Datasheet Lib Reddit Elec Ermicro Carnet du maker (fr) |
arduino programmerLast update: Thu Jun 5 22:25:40 2025
PurposeI have a nice AVR ISP mkII and I'm living a happy relation ship with it, a nice menage a trois with Atmel Studio 6. But recently (2014/01/13) I bought a lucky bag at one of my favorites shop Akizukidenshi in Akihabara. Inside there was a handful of old discontinued ATmel chips like AT90S4414 or Attiny26L that can not be programmed with Atmel Studio 6.Ok so solution is to use avrdude and the avg-gcc solution. So far so good. But to use the AVR ISP mkII I need to install alternate drivers, which I did try. And there started problems: both drivers can't work at the same time (of course) means that I can use my programmer with Atmel Studio 6 or with avrdude, not both (unless some driver switching magic). So let's dig in that pile of various Arduinos I have and make something useful. (5~6 years later) Jan 2020: ok I finally did it v(^_^)v It works, yet not perfect. In the meanwhile my environment changed from Windows to Linux and from AVR Studio to Eclipse, but yes, there we are! Documentations
Bill of MaterialsCommandsREAD ME: it works, but sometimes refuses commands, need to try a few time. One thing that came out of my testing is that forcing the baudrate (-b 19200) seems important, so do that future me.Read low fuse: avrdude -c avrisp -p m328p -P/dev/ttyUSB0 -b 19200 -U lfuse:r:-:i -v Program: avrdude -v -patmega328p -c avrisp -P/dev/ttyUSB0 -b19200 -Uflash:w:/path/to/program.hex:i
CodeIn the arduino samples, the "ArduinoISP".Following changes: USE_OLD_STYLE_WIRING because I started wiring like that before reading that we could use the SPI module itself and not bitbang it...heartbeat() to set a 40ms delay (not sure why, must mess up the timing of something else elsewere)Pictures![]() |
All content on this site is shared under the MIT licence (do what u want, don't sue me, hat tip appreciated) electrogeek.tokyo ~ Formerly known as Kalshagar.wikispaces.com and electrogeek.cc (AlanFromJapan [2009 - 2025]) |